package co.edu.usbcali.integrador.mac.modelo.control;

import co.edu.usbcali.integrador.mac.modelo.Causal;
import co.edu.usbcali.integrador.mac.modelo.dto.CausalDTO;

import java.math.BigDecimal;

import java.util.*;
import java.util.Date;
import java.util.List;
import java.util.Set;


/**
* @author Zathura Code Generator http://code.google.com/p/zathura
*
*/
public interface ICausalLogic {
    public List<Causal> getCausal() throws Exception;

    /**
         * Save an new Causal entity
         */
    public void saveCausal(Causal entity) throws Exception;

    /**
         * Delete an existing Causal entity
         *
         */
    public void deleteCausal(Causal entity) throws Exception;

    /**
        * Update an existing Causal entity
        *
        */
    public void updateCausal(Causal entity) throws Exception;

    /**
         * Load an existing Causal entity
         *
         */
    public Causal getCausal(Long idCusa) throws Exception;

    public List<Causal> findByCriteria(Object[] variables,
        Object[] variablesBetween, Object[] variablesBetweenDates)
        throws Exception;

    public List<Causal> findPageCausal(String sortColumnName,
        boolean sortAscending, int startRow, int maxResults)
        throws Exception;

    public Long findTotalNumberCausal() throws Exception;

    public List<CausalDTO> getDataCausal() throws Exception;
}
